package com.txc.cloud.admin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.txc.cloud.admin.entity.RoleDeptEntity;
import com.txc.common.global.model.SysRole;
import com.txc.common.global.model.LoginUser;

import java.util.List;

/**
 * 角色部门 服务类
 *
 * @ClassName: IRoleDeptService
 * @Author: TXC
 * @Date: 2022-08-15 15:45
 **/
public interface IRoleDeptService extends IService<RoleDeptEntity> {
    /**
     * 更新部门角色关系
     *
     * @param roleId  角色id
     * @param deptIds 部门id集合
     */
    void flush(Long roleId, List<Long> deptIds);

    /** 查询角色数据权限对应的部门
     * @param roleId 角色id
     * @return 部门id集合
     */
    List<Long> getDeptIds(Long roleId);

    /** 查询角色数据权限对应的部门
     * @param role 角色对象
     * @param loginUser 用户信息
     * @return 部门id集合
     */
    List<Long> getDeptIds(SysRole role, LoginUser loginUser);
}
